package com.ruoyi.system.service;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.system.domain.LabinfoItemData;
import com.ruoyi.system.domain.Patient;

import java.util.List;
import java.util.Map;

public interface ILabinfoItemDataService {
    /**
     * 查询【项目】
     *
     * @param id 【项目】主键
     * @return 【项目】
     */
    public LabinfoItemData selectLabinfoItemDataById(Long id);

    /**
     * 查询【项目】列表
     *
     * @param labinfoItemData 【项目】
     * @return 【项目】集合
     */
    public List<LabinfoItemData> selectLabinfoItemDataList(LabinfoItemData labinfoItemData);

    /**
     * 新增【项目】
     *
     * @param labinfoItemData 【项目】
     * @return 结果
     */
    public int insertLabinfoItemData(LabinfoItemData labinfoItemData);

    /**
     * 修改【项目】
     *
     * @param labinfoItemData 【项目】
     * @return 结果
     */
    public int updateLabinfoItemData(LabinfoItemData labinfoItemData);

    /**
     * 批量删除【项目】
     *
     * @param ids 需要删除的【项目】主键集合
     * @return 结果
     */
    public int deleteLabinfoItemDataByIds(Long[] ids);

    /**
     * 删除【项目】信息
     *
     * @param id 【项目】主键
     * @return 结果
     */
    public int deleteLabinfoItemDataById(Long id);


    List<LabinfoItemData> getItemByReceiveDate(Map map);

    List<Map> getItemListBySampleDecWay1(LabinfoItemData labinfoItemData, SysUser sysUser);

    List<LabinfoItemData> getItemListBySampleDecWay2(LabinfoItemData labinfoItemData, SysUser sysUser);

    public int shareItems(LabinfoItemData labinfoItemData);


    List<Map> getReceiveItemDateList(Map map);

    /**
     * 保存item数据
     *
     * @param
     * @return 结果
     */
    public AjaxResult saveItem(List<LabinfoItemData> itemDataList);




    /**
        查询样本信息列表(样本统计页面)
     */
    public List<Map> getLabinfoItemDataList(LabinfoItemData labinfoItemData);

}
